package com.yimiyisu.contract_cust.domain;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;
import java.util.Map;
import java.util.Objects;

/**
 * @author Z-熙玉
 * @version 1.0
 */
@Data
public class FieldDO {
    private String id;
    private Object value;
    private String type;
    private String unit;
    private String label;
    private List<MaterialDO> material;

    /**
     * 通过 value 查找 FieldDO 对象
     *
     * @param value 要查找的值
     * @param fields 字段列表
     * @return 匹配的 FieldDO 对象，如果未找到则返回 null
     */
    public static FieldDO findByValue(String value, List<FieldDO> fields) {
        if (fields == null || value == null) {
            return null;
        }

        return fields.stream()
                .filter(field -> value.equals(field.getValue()))
                .findFirst()
                .orElse(null);
    }

}
